package eteam.aps.systeminterface.model.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;

import java.io.Serializable;
import java.util.Date;
import java.util.List;

/**
 * @description : sp_custclass实体
 */
@Data
@TableName(value = "sp_custclass")
public class CustclassEntity implements Serializable {
    /**
     * 下级分类
     */
    @TableField(exist = false)
    public List<CustclassEntity> children;
    /**
     * 是否叶子节点
     */
    @TableField(exist = false)
    public Boolean isleaf;
    /**
     * 主键ID
     */
    @TableId(value = "FClassId", type = IdType.INPUT)
    private String fclassid;
    /**
     * 类别编号
     */
    @TableField(value = "FCode")
    private String fcode;
    /**
     * 内部编号，用于查询使用，每层Code拼接
     */
    @TableField(value = "FInsideCode")
    private String finsidecode;
    /**
     * 类别名称
     */
    @TableField(value = "FName")
    private String fname;
    /**
     * 助记码
     */
    @TableField(value = "FZJCode")
    private String fzjcode;
    /**
     * 同级序号
     */
    @TableField(value = "FOrder")
    private Integer forder;
    /**
     * 上级Id
     */
    @TableField(value = "FAboveId")
    private String faboveid;
    /**
     * 备注
     */
    @TableField(value = "FRemark")
    private String fremark;
    /**
     * 录入机构
     */
    @TableField(value = "FRecorderOrg")
    private String frecorderorg;
    /**
     *
     */
    @TableField(value = "FRecorder")
    private String frecorder;
    /**
     *
     */
    @TableField(value = "FRecorderName")
    private String frecordername;
    /**
     *
     */
    @TableField(value = "FRecordTime")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date frecordtime;
    /**
     *
     */
    @TableField(value = "FLastModifier")
    private String flastmodifier;
    /**
     *
     */
    @TableField(value = "FLastModifierName")
    private String flastmodifiername;
    /**
     *
     */
    @TableField(value = "FLastModifyTime")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date flastmodifytime;
    /**
     * 状态【-1删除 0停用 1启用】
     */
    @TableField(value = "State")
    private Integer state;
}
